package org.admanager.piadl.plugin.diagram.part;

import java.util.Collection;
import java.util.Collections;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;

import org.admanager.piadl.plugin.diagram.edit.parts.AcmeRootEditPart;
import org.admanager.piadl.plugin.diagram.edit.parts.ArchitectureArchitectureCompartmentEditPart;
import org.admanager.piadl.plugin.diagram.edit.parts.ArchitectureEditPart;
import org.admanager.piadl.plugin.diagram.edit.parts.Component2EditPart;
import org.admanager.piadl.plugin.diagram.edit.parts.ComponentComponentCompartment2EditPart;
import org.admanager.piadl.plugin.diagram.edit.parts.ComponentComponentCompartmentEditPart;
import org.admanager.piadl.plugin.diagram.edit.parts.ComponentEditPart;
import org.admanager.piadl.plugin.diagram.edit.parts.Connector2EditPart;
import org.admanager.piadl.plugin.diagram.edit.parts.ConnectorConnectorCompartment2EditPart;
import org.admanager.piadl.plugin.diagram.edit.parts.ConnectorConnectorCompartmentEditPart;
import org.admanager.piadl.plugin.diagram.edit.parts.ConnectorEditPart;
import org.admanager.piadl.plugin.diagram.edit.parts.Port2EditPart;
import org.admanager.piadl.plugin.diagram.edit.parts.PortEditPart;
import org.admanager.piadl.plugin.diagram.edit.parts.RelayEditPart;
import org.admanager.piadl.plugin.diagram.edit.parts.UnificationEditPart;
import org.admanager.piadl.plugin.diagram.providers.PiADLADManagementMetamodelElementTypes;
import org.admanager.piadladmanagement.plugin.piadladmanagement.Architecture;
import org.admanager.piadladmanagement.plugin.piadladmanagement.Component;
import org.admanager.piadladmanagement.plugin.piadladmanagement.Connector;
import org.admanager.piadladmanagement.plugin.piadladmanagement.PiadladmanagementPackage;
import org.admanager.piadladmanagement.plugin.piadladmanagement.Port;
import org.admanager.piadladmanagement.plugin.piadladmanagement.Relay;
import org.admanager.piadladmanagement.plugin.piadladmanagement.SimpleElement;
import org.admanager.piadladmanagement.plugin.piadladmanagement.Unification;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.gmf.runtime.notation.View;

/**
 * @generated
 */
public class PiADLADManagementMetamodelDiagramUpdater {

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelNodeDescriptor]*/getSemanticChildren(
			View view) {
		switch (PiADLADManagementMetamodelVisualIDRegistry.getVisualID(view)) {
		case AcmeRootEditPart.VISUAL_ID:
			return getArchitecture_1000SemanticChildren(view);
		case ConnectorConnectorCompartmentEditPart.VISUAL_ID:
			return getConnectorConnectorCompartment_7007SemanticChildren(view);
		case ArchitectureArchitectureCompartmentEditPart.VISUAL_ID:
			return getArchitectureArchitectureCompartment_7008SemanticChildren(view);
		case ComponentComponentCompartmentEditPart.VISUAL_ID:
			return getComponentComponentCompartment_7009SemanticChildren(view);
		case ConnectorConnectorCompartment2EditPart.VISUAL_ID:
			return getConnectorConnectorCompartment_7010SemanticChildren(view);
		case ComponentComponentCompartment2EditPart.VISUAL_ID:
			return getComponentComponentCompartment_7011SemanticChildren(view);
		}
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelNodeDescriptor]*/getArchitecture_1000SemanticChildren(
			View view) {
		if (!view.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		Architecture modelElement = (Architecture) view.getElement();
		LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelNodeDescriptor]*/result = new LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getConnectors().iterator(); it
				.hasNext();) {
			Connector childElement = (Connector) it.next();
			int visualID = PiADLADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == ConnectorEditPart.VISUAL_ID) {
				result.add(new PiADLADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		for (Iterator/*[?]*/it = modelElement.getComponents().iterator(); it
				.hasNext();) {
			Component childElement = (Component) it.next();
			int visualID = PiADLADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == ComponentEditPart.VISUAL_ID) {
				result.add(new PiADLADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelNodeDescriptor]*/getConnectorConnectorCompartment_7007SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		Connector modelElement = (Connector) containerView.getElement();
		LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelNodeDescriptor]*/result = new LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelNodeDescriptor]*/();
		{
			Architecture childElement = modelElement.getArchitecture();
			int visualID = PiADLADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == ArchitectureEditPart.VISUAL_ID) {
				result.add(new PiADLADManagementMetamodelNodeDescriptor(
						childElement, visualID));
			}
		}
		for (Iterator/*[?]*/it = modelElement.getPorts().iterator(); it
				.hasNext();) {
			Port childElement = (Port) it.next();
			int visualID = PiADLADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == PortEditPart.VISUAL_ID) {
				result.add(new PiADLADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelNodeDescriptor]*/getArchitectureArchitectureCompartment_7008SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		Architecture modelElement = (Architecture) containerView.getElement();
		LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelNodeDescriptor]*/result = new LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getComponents().iterator(); it
				.hasNext();) {
			Component childElement = (Component) it.next();
			int visualID = PiADLADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == Component2EditPart.VISUAL_ID) {
				result.add(new PiADLADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		for (Iterator/*[?]*/it = modelElement.getConnectors().iterator(); it
				.hasNext();) {
			Connector childElement = (Connector) it.next();
			int visualID = PiADLADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == Connector2EditPart.VISUAL_ID) {
				result.add(new PiADLADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelNodeDescriptor]*/getComponentComponentCompartment_7009SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		Component modelElement = (Component) containerView.getElement();
		LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelNodeDescriptor]*/result = new LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getPorts().iterator(); it
				.hasNext();) {
			Port childElement = (Port) it.next();
			int visualID = PiADLADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == Port2EditPart.VISUAL_ID) {
				result.add(new PiADLADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		{
			Architecture childElement = modelElement.getArchitecture();
			int visualID = PiADLADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == ArchitectureEditPart.VISUAL_ID) {
				result.add(new PiADLADManagementMetamodelNodeDescriptor(
						childElement, visualID));
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelNodeDescriptor]*/getConnectorConnectorCompartment_7010SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		Connector modelElement = (Connector) containerView.getElement();
		LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelNodeDescriptor]*/result = new LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelNodeDescriptor]*/();
		{
			Architecture childElement = modelElement.getArchitecture();
			int visualID = PiADLADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == ArchitectureEditPart.VISUAL_ID) {
				result.add(new PiADLADManagementMetamodelNodeDescriptor(
						childElement, visualID));
			}
		}
		for (Iterator/*[?]*/it = modelElement.getPorts().iterator(); it
				.hasNext();) {
			Port childElement = (Port) it.next();
			int visualID = PiADLADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == PortEditPart.VISUAL_ID) {
				result.add(new PiADLADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelNodeDescriptor]*/getComponentComponentCompartment_7011SemanticChildren(
			View view) {
		if (false == view.eContainer() instanceof View) {
			return Collections.EMPTY_LIST;
		}
		View containerView = (View) view.eContainer();
		if (!containerView.isSetElement()) {
			return Collections.EMPTY_LIST;
		}
		Component modelElement = (Component) containerView.getElement();
		LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelNodeDescriptor]*/result = new LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelNodeDescriptor]*/();
		for (Iterator/*[?]*/it = modelElement.getPorts().iterator(); it
				.hasNext();) {
			Port childElement = (Port) it.next();
			int visualID = PiADLADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == Port2EditPart.VISUAL_ID) {
				result.add(new PiADLADManagementMetamodelNodeDescriptor(
						childElement, visualID));
				continue;
			}
		}
		{
			Architecture childElement = modelElement.getArchitecture();
			int visualID = PiADLADManagementMetamodelVisualIDRegistry
					.getNodeVisualID(view, childElement);
			if (visualID == ArchitectureEditPart.VISUAL_ID) {
				result.add(new PiADLADManagementMetamodelNodeDescriptor(
						childElement, visualID));
			}
		}
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getContainedLinks(
			View view) {
		switch (PiADLADManagementMetamodelVisualIDRegistry.getVisualID(view)) {
		case AcmeRootEditPart.VISUAL_ID:
			return getArchitecture_1000ContainedLinks(view);
		case ConnectorEditPart.VISUAL_ID:
			return getConnector_2003ContainedLinks(view);
		case ComponentEditPart.VISUAL_ID:
			return getComponent_2004ContainedLinks(view);
		case ArchitectureEditPart.VISUAL_ID:
			return getArchitecture_3008ContainedLinks(view);
		case Component2EditPart.VISUAL_ID:
			return getComponent_3009ContainedLinks(view);
		case Port2EditPart.VISUAL_ID:
			return getPort_3010ContainedLinks(view);
		case Connector2EditPart.VISUAL_ID:
			return getConnector_3011ContainedLinks(view);
		case PortEditPart.VISUAL_ID:
			return getPort_3007ContainedLinks(view);
		case UnificationEditPart.VISUAL_ID:
			return getUnification_4005ContainedLinks(view);
		case RelayEditPart.VISUAL_ID:
			return getRelay_4006ContainedLinks(view);
		}
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getIncomingLinks(
			View view) {
		switch (PiADLADManagementMetamodelVisualIDRegistry.getVisualID(view)) {
		case ConnectorEditPart.VISUAL_ID:
			return getConnector_2003IncomingLinks(view);
		case ComponentEditPart.VISUAL_ID:
			return getComponent_2004IncomingLinks(view);
		case ArchitectureEditPart.VISUAL_ID:
			return getArchitecture_3008IncomingLinks(view);
		case Component2EditPart.VISUAL_ID:
			return getComponent_3009IncomingLinks(view);
		case Port2EditPart.VISUAL_ID:
			return getPort_3010IncomingLinks(view);
		case Connector2EditPart.VISUAL_ID:
			return getConnector_3011IncomingLinks(view);
		case PortEditPart.VISUAL_ID:
			return getPort_3007IncomingLinks(view);
		case UnificationEditPart.VISUAL_ID:
			return getUnification_4005IncomingLinks(view);
		case RelayEditPart.VISUAL_ID:
			return getRelay_4006IncomingLinks(view);
		}
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getOutgoingLinks(
			View view) {
		switch (PiADLADManagementMetamodelVisualIDRegistry.getVisualID(view)) {
		case ConnectorEditPart.VISUAL_ID:
			return getConnector_2003OutgoingLinks(view);
		case ComponentEditPart.VISUAL_ID:
			return getComponent_2004OutgoingLinks(view);
		case ArchitectureEditPart.VISUAL_ID:
			return getArchitecture_3008OutgoingLinks(view);
		case Component2EditPart.VISUAL_ID:
			return getComponent_3009OutgoingLinks(view);
		case Port2EditPart.VISUAL_ID:
			return getPort_3010OutgoingLinks(view);
		case Connector2EditPart.VISUAL_ID:
			return getConnector_3011OutgoingLinks(view);
		case PortEditPart.VISUAL_ID:
			return getPort_3007OutgoingLinks(view);
		case UnificationEditPart.VISUAL_ID:
			return getUnification_4005OutgoingLinks(view);
		case RelayEditPart.VISUAL_ID:
			return getRelay_4006OutgoingLinks(view);
		}
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getArchitecture_1000ContainedLinks(
			View view) {
		Architecture modelElement = (Architecture) view.getElement();
		LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getContainedTypeModelFacetLinks_Unification_4005(modelElement));
		result.addAll(getContainedTypeModelFacetLinks_Relay_4006(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getConnector_2003ContainedLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getComponent_2004ContainedLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getArchitecture_3008ContainedLinks(
			View view) {
		Architecture modelElement = (Architecture) view.getElement();
		LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getContainedTypeModelFacetLinks_Unification_4005(modelElement));
		result.addAll(getContainedTypeModelFacetLinks_Relay_4006(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getComponent_3009ContainedLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getPort_3010ContainedLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getConnector_3011ContainedLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getPort_3007ContainedLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getUnification_4005ContainedLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getRelay_4006ContainedLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getConnector_2003IncomingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getComponent_2004IncomingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getArchitecture_3008IncomingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getComponent_3009IncomingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getPort_3010IncomingLinks(
			View view) {
		Port modelElement = (Port) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingTypeModelFacetLinks_Unification_4005(
				modelElement, crossReferences));
		result.addAll(getIncomingTypeModelFacetLinks_Relay_4006(modelElement,
				crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getConnector_3011IncomingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getPort_3007IncomingLinks(
			View view) {
		Port modelElement = (Port) view.getElement();
		Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences = EcoreUtil.CrossReferencer
				.find(view.eResource().getResourceSet().getResources());
		LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getIncomingTypeModelFacetLinks_Unification_4005(
				modelElement, crossReferences));
		result.addAll(getIncomingTypeModelFacetLinks_Relay_4006(modelElement,
				crossReferences));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getUnification_4005IncomingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getRelay_4006IncomingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getConnector_2003OutgoingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getComponent_2004OutgoingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getArchitecture_3008OutgoingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getComponent_3009OutgoingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getPort_3010OutgoingLinks(
			View view) {
		Port modelElement = (Port) view.getElement();
		LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingTypeModelFacetLinks_Unification_4005(modelElement));
		result.addAll(getOutgoingTypeModelFacetLinks_Relay_4006(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getConnector_3011OutgoingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getPort_3007OutgoingLinks(
			View view) {
		Port modelElement = (Port) view.getElement();
		LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/();
		result.addAll(getOutgoingTypeModelFacetLinks_Unification_4005(modelElement));
		result.addAll(getOutgoingTypeModelFacetLinks_Relay_4006(modelElement));
		return result;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getUnification_4005OutgoingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	public static List/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getRelay_4006OutgoingLinks(
			View view) {
		return Collections.EMPTY_LIST;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getContainedTypeModelFacetLinks_Unification_4005(
			Architecture container) {
		LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/();
		for (Iterator/*[?]*/links = container.getUnifications().iterator(); links
				.hasNext();) {
			EObject linkObject = (EObject) links.next();
			if (false == linkObject instanceof Unification) {
				continue;
			}
			Unification link = (Unification) linkObject;
			if (UnificationEditPart.VISUAL_ID != PiADLADManagementMetamodelVisualIDRegistry
					.getLinkWithClassVisualID(link)) {
				continue;
			}
			SimpleElement dst = link.getTarget();
			SimpleElement src = link.getSource();
			result.add(new PiADLADManagementMetamodelLinkDescriptor(src, dst,
					link,
					PiADLADManagementMetamodelElementTypes.Unification_4005,
					UnificationEditPart.VISUAL_ID));
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getContainedTypeModelFacetLinks_Relay_4006(
			Architecture container) {
		LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/();
		for (Iterator/*[?]*/links = container.getRelays().iterator(); links
				.hasNext();) {
			EObject linkObject = (EObject) links.next();
			if (false == linkObject instanceof Relay) {
				continue;
			}
			Relay link = (Relay) linkObject;
			if (RelayEditPart.VISUAL_ID != PiADLADManagementMetamodelVisualIDRegistry
					.getLinkWithClassVisualID(link)) {
				continue;
			}
			SimpleElement dst = link.getTarget();
			SimpleElement src = link.getSource();
			result.add(new PiADLADManagementMetamodelLinkDescriptor(src, dst,
					link, PiADLADManagementMetamodelElementTypes.Relay_4006,
					RelayEditPart.VISUAL_ID));
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getIncomingTypeModelFacetLinks_Unification_4005(
			SimpleElement target,
			Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences) {
		LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/();
		Collection/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/settings = (Collection) crossReferences
				.get(target);
		for (Iterator/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/it = settings
				.iterator(); it.hasNext();) {
			EStructuralFeature.Setting setting = (EStructuralFeature.Setting) it
					.next();
			if (setting.getEStructuralFeature() != PiadladmanagementPackage.eINSTANCE
					.getConnection_Target()
					|| false == setting.getEObject() instanceof Unification) {
				continue;
			}
			Unification link = (Unification) setting.getEObject();
			if (UnificationEditPart.VISUAL_ID != PiADLADManagementMetamodelVisualIDRegistry
					.getLinkWithClassVisualID(link)) {
				continue;
			}
			SimpleElement src = link.getSource();
			result.add(new PiADLADManagementMetamodelLinkDescriptor(src,
					target, link,
					PiADLADManagementMetamodelElementTypes.Unification_4005,
					UnificationEditPart.VISUAL_ID));
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getIncomingTypeModelFacetLinks_Relay_4006(
			SimpleElement target,
			Map/*[org.eclipse.emf.ecore.EObject, java.util.Collection<org.eclipse.emf.ecore.EStructuralFeature.Setting>]*/crossReferences) {
		LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/();
		Collection/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/settings = (Collection) crossReferences
				.get(target);
		for (Iterator/*[org.eclipse.emf.ecore.EStructuralFeature.Setting]*/it = settings
				.iterator(); it.hasNext();) {
			EStructuralFeature.Setting setting = (EStructuralFeature.Setting) it
					.next();
			if (setting.getEStructuralFeature() != PiadladmanagementPackage.eINSTANCE
					.getConnection_Target()
					|| false == setting.getEObject() instanceof Relay) {
				continue;
			}
			Relay link = (Relay) setting.getEObject();
			if (RelayEditPart.VISUAL_ID != PiADLADManagementMetamodelVisualIDRegistry
					.getLinkWithClassVisualID(link)) {
				continue;
			}
			SimpleElement src = link.getSource();
			result.add(new PiADLADManagementMetamodelLinkDescriptor(src,
					target, link,
					PiADLADManagementMetamodelElementTypes.Relay_4006,
					RelayEditPart.VISUAL_ID));
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getOutgoingTypeModelFacetLinks_Unification_4005(
			SimpleElement source) {
		Architecture container = null;
		// Find container element for the link.
		// Climb up by containment hierarchy starting from the source
		// and return the first element that is instance of the container class.
		for (EObject element = source; element != null && container == null; element = element
				.eContainer()) {
			if (element instanceof Architecture) {
				container = (Architecture) element;
			}
		}
		if (container == null) {
			return Collections.EMPTY_LIST;
		}
		LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/();
		for (Iterator/*[?]*/links = container.getUnifications().iterator(); links
				.hasNext();) {
			EObject linkObject = (EObject) links.next();
			if (false == linkObject instanceof Unification) {
				continue;
			}
			Unification link = (Unification) linkObject;
			if (UnificationEditPart.VISUAL_ID != PiADLADManagementMetamodelVisualIDRegistry
					.getLinkWithClassVisualID(link)) {
				continue;
			}
			SimpleElement dst = link.getTarget();
			SimpleElement src = link.getSource();
			if (src != source) {
				continue;
			}
			result.add(new PiADLADManagementMetamodelLinkDescriptor(src, dst,
					link,
					PiADLADManagementMetamodelElementTypes.Unification_4005,
					UnificationEditPart.VISUAL_ID));
		}
		return result;
	}

	/**
	 * @generated
	 */
	private static Collection/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/getOutgoingTypeModelFacetLinks_Relay_4006(
			SimpleElement source) {
		Architecture container = null;
		// Find container element for the link.
		// Climb up by containment hierarchy starting from the source
		// and return the first element that is instance of the container class.
		for (EObject element = source; element != null && container == null; element = element
				.eContainer()) {
			if (element instanceof Architecture) {
				container = (Architecture) element;
			}
		}
		if (container == null) {
			return Collections.EMPTY_LIST;
		}
		LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/result = new LinkedList/*[org.admanager.piadl.plugin.diagram.part.PiADLADManagementMetamodelLinkDescriptor]*/();
		for (Iterator/*[?]*/links = container.getRelays().iterator(); links
				.hasNext();) {
			EObject linkObject = (EObject) links.next();
			if (false == linkObject instanceof Relay) {
				continue;
			}
			Relay link = (Relay) linkObject;
			if (RelayEditPart.VISUAL_ID != PiADLADManagementMetamodelVisualIDRegistry
					.getLinkWithClassVisualID(link)) {
				continue;
			}
			SimpleElement dst = link.getTarget();
			SimpleElement src = link.getSource();
			if (src != source) {
				continue;
			}
			result.add(new PiADLADManagementMetamodelLinkDescriptor(src, dst,
					link, PiADLADManagementMetamodelElementTypes.Relay_4006,
					RelayEditPart.VISUAL_ID));
		}
		return result;
	}

}
